home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-01-21 | 18.0 KB | 1,376 lines |
- %OP%VS4.13 (28-Apr-92), Keith H Matthews, R4001 0013 6765 8229
- %OP%BON
- %OP%WRY
- %OP%DP0
- %OP%IRY
- %OP%GRN
- %OP%HM0
- %OP%FM0
- %OP%BM6
- %OP%LM8
- %OP%PT1
- %OP%PDfx80elite
- %OP%WC2,1238,636,988,0,0,0,0
- %CO:A,5,77%
- %C%%H2%New Scope for Key Definitions
- %C%by Keith Matthews
-
- The following default key assignments (some of which may be undocumented)
- exist in PipeDream 4.13, but most of them are reconfigurable with the Define
- Function Key command ( \Cdf ). PD3 has more defaults (for which, please
- refer to PipeL9101a.$.HintsTips.Matthews.CmdKeys ). The F12 definitions are
- those of RISC OS 3, which should not be altered.
-
- %H2%KEY
- Tab
- BkSp
- F12
- Prnt
- Ins
- Home
- Del
- Copy
-
- The following are NOT reconfigurable in PD4, and are consistent with !Edit
- usage, except for column-based commands. The duplications between PageUp
- and UpArrow, and between PageDown and DownArrow, are imposed by RISC OS.
-
- %H2%KEY
- PgUp
- PgDn
- Up
- Down
- Left
- Rght
-
- %H2%NB:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- The rest of this article is mainly for keyboard freaks who touch-type (more
- or less), and find menus frustratingly slow for editing text and tables. It
- is the first of a short series intended also to cover a set of memorable and
- easily-typed Ctrl combinations, and one or more configurations of the
- numbered function keys (leaving some blank for special temporary uses).
-
- You are unlikely habitually to use more than two different key combinations
- for the same command. You may have learned many of the command strings used
- with Ctrl, but would probably like some easily-remembered short cuts too.
-
- Leaving aside F12 and the other function keys, the seven reconfigurable keys
- in the first table above have only six default actions between them which
- are not duplicated within the two tables, and one of those (Insert Space) by
- default requires only a CtrlU anyway. So it is sensible to seek a complete
- and coherent set of commands for these seven keys, freeing for other
- purposes as many function and Ctrl key combinations as practicable.
-
- %H2%Configuration of Insert, Delete, Home and Copy
-
- Those who graduated from the old BBC machine to the Archimedes (or have used
- !Edit or Impression) are used to having Copy mirror the action of Delete, as
- happens in dialogue boxes under RISC OS. It therefore occurred to me that
- all the PD4 deletion commands (except Block Delete) would fit on these two
- keys, and the insertion commands similarly on Insert and Home.
-
- Add the further idea of using Insert or Delete for operations on rows, and
- Home or Copy for those on columns, and hey presto, there's room for a couple
- of useful extra commands: Delete Word Backwards or something similar, and
- Start of Document (which is what Home means in !Edit and most other word
- processors). Clearly the default action of Delete must be kept, and I have
- also retained the default use of Insert, as in !Edit, to insert a space.
-
- Another useful principle is that Delete and Copy should behave consistently
- with the left and right arrow movements (character, word, end of slot). The
- definitions given below have been tested, using PD4.13, in a !PipeDream.Key
- file, a fully commented copy of which is included as Key1 in this directory.
-
- \Cdf|i "Copy" |i "\G|m" |m Delete next character
- \Cdf|i "Shift Delete" |i "\Cpw|m\T|m" |m Delete 1 word starting before caret
- \Cdf|i "Shift Copy" |i "\T|m" |m Delete forward to next word
- \Cdf|i "Ctrl Copy" |i "\D|m" |m Delete forward to end of slot
-
- \Cdf|i "Home" |i "\Cfc|m\Ctc|m" |m Start of document (slot A1)
- \Cdf|i "Shift Insert" |i "\Eip|m" |m Insert page break (dialogue box)
- \Cdf|i "Shift Home" |i "\I|m" |m Paste from buffer starting here
- \Cdf|i "Ctrl Home" |i "\Cwi|m" |m Centre window at caret
-
- \Cdf|i "Ctrl Insert" |i "\Eirc|m" |m Insert empty slot in column
- \Cdf|i "Ctrl Delete" |i "\Edrc|m" |m Delete this slot from column
- \Cdf|i "Ctrl-Shift Insert" |i "\N|m" |m Insert empty row before this
- \Cdf|i "Ctrl-Shift Delete" |i "\Y|m" |m Delete this whole row
- \Cdf|i "Ctrl-Shift Home" |i "\Eic|m" |m Insert empty column before this
- \Cdf|i "Ctrl-Shift Copy" |i "\Edc|m" |m Delete this whole column
-
- The decision on whether or not the ShiftDelete action string should include
- an initial space was tricky. The permutations are:
-
-
-
-
-
-
- In the end, I left the space out because it gets saved in the paste buffer,
- and tends to be a nuisance if the deleted string is subsequently re-used.
-
- Impression uses Insert by itself for the Paste command, but I prefer a
- Shifted key for that, for use in quick succession with the single-word
- commands ShiftDelete, ShiftCopy, ShiftLeft and ShiftRight, and even with
- ShiftPageUp or ShiftPageDown to move one line at a time. One particularly
- neat usage is the transposition two of words in the same line: put the
- caret at the beginning of the second word, hold down Shift and tap Copy-
- Delete-Home-Home. There is no easy equivalent for transposing two letters,
- because single-letter deletions are not saved in the paste buffer.
-
- One snag in the above command key assignments is that if you want to paste
- back several deleted words in the right order, you may use ShiftDelete only
- once, %H4%in front of%H4% a chain of ShiftCopy commands. The main purpose of
- ShiftDelete is to throw away the last word (or part) you typed.
-
- Remember not to use character- or word-based deletions in a number slot:
- you will get either no effect, or an error message. Since in an active
- number slot the caret is always at the left, use only CtrlCopy to clear it.
- For editing in the formula line/window, see PD4 reference manual, pp.174-7;
- many of the above short cuts will work, but the paste buffer will not. Some
- problems which occur in using Tab and arrow-key combinations in the formula
- line are examined in the Cuckoo directory on the November 1992 disc.
-
- Unfortunately neither CtrlShiftDelete nor CtrlShiftCopy is available for
- another composite new command, to delete the whole slot contents from any
- position in the slot, like CtrlU in a dialogue box. I thought of redefining
- CtrlU, now it is no longer required for Insert Space, but found that in
- PD4.13 Define Command ( \Cdc ) will allow only one existing command to be
- used in a definition, whereas I wanted two in one ( \Cbs followed by \D ).
- Nor could I use Define Key ( \Cdk ): an attempt to redefine key 21 (the
- relevant ASCII code) was a failure, leaving CtrlU with its default action.
- It would be nice if, in some future version of PipeDream, a space could be
- entered in the second parameter box of \Cdc as a command string separator.
- Till then I'll settle for CtrlLeft-Copy, which works in dialogue boxes too.
-
- A final word of caution about one of the most destructive commands: Delete
- Column which is on CtrlShiftCopy. If you use this by mistake instead of
- CtrlShiftDelete when you meant to delete a row, don't panic. You can
- recover the whole column immediately by first inserting a blank column in
- its place, then putting the cursor at the top and using ShiftHome to paste
- the entire deleted contents back. If there were slot references to the
- deleted column from elsewhere, bad luck: when did you last save the file?
-
- %H2%Tab and BackSpace keys
-
- Long practice with ShiftTab and ShiftDelete in PD3 still left me pausing to
- think about using Shift to reverse an action. So I have gone back to using
- different keys for opposite directions, despite the risk of hitting the
- wrong one if like Delete and Copy they are adjacent. BackSpace now mirrors
- the actions of Tab, instead of duplicating Delete. Fingers need retraining
- if you habitually use both Delete and BackSpace to delete the previous
- character, but BackSpace only moves the caret, and is not destructive.
-
- A trawl through the keyname parameters in the \Cdf dialogue box reveals the
- mysterious absence of both CtrlBackspace and CtrlShiftBackspace, and if you
- try (in PD4.13) to redefine either of them in a command file, it grinds to a
- halt with a Bad Parameter message. There must be a reason for this; maybe
- it's to avoid a bug. But you can use \Cdc to change the action of the \H
- command, which both of these keys return by default; so to keep Set Right
- Margin on the keyboard I have put it for now on F11, though that may change
- when I come to redefine other commands and numbered function keys.
-
- In the following scheme, Tab and CtrlTab keep their PD4 default meanings of
- Next Column and Last Column. Luckily, I didn't need CtrlShiftBackspace to
- mirror the obvious choice of meaning for CtrlShiftTab:
-
- \Cdf|i "Backspace" |i "\Cbs|m \Cpc|m" |m Previous column OR Start of slot
- \Cdf|i "Shift Tab" |i "\Cpr|m" |m Windowful right
- \Cdf|i "Shift BackSpace" |i "\Cpl|m" |m Windowful left
- \Cdc|i "H" |i "Cfc" |m First column (\H on CtrlBackspace)
- \Cdf|i "Ctrl-Shift Tab" |i "\Eac|m" |m Add empty column on far right
- \Cdf|i "F11" |i "\H|m" |m Set right margin
-
- The behaviour of the two new Windowful commands does not seem entirely
- predictable, when columns are fixed on the left of the screen. The two-way
- definition of Backspace helps its intuitive use where column A overlaps
- several others. One other thing to watch out for: during formula line
- editing, Backspace and ShiftBackSpace will both delete a character to the
- left in the formula, unless Return is first pressed to terminate editing,
- whilst ShiftTab (just like Tab, UpArrow and DownArrow) will automatically
- terminate editing as a side-effect, for reasons explained in the Cuckoo
- directory. The redefined action of ShiftTab is unaffected by this.
-
- %H2%Print and other top-row keys
-
- How you use the Print key will probably depend on your printer, but you
- might want some more Print menu commands on it, such as:
-
- \Cdf|i "Shift Print" |i "\Pd|m" |m Printer configuration dialogue box
- \Cdf|i "Ctrl Print" |i "\Pfg|m" |m Document font dialogue box
- \Cdf|i "Ctrl-Shift Print" |i "\Pfl|m" |m Local font dialogue box
-
- As some of the more destructive defaults on the function keys are now placed
- in a common-sense "controlled environment" on Delete and Copy, I neuter them
- by assigning the innocuous \Fa (About this file) to F7, F8, F9 and F10 which
- are too dangerous to hit by mistake. This would have happened to F11 as
- well, if it hadn't been used for Set Right Margin.
-
- %H2%Summary of dark grey key definitions
-
- In the following table, which is reproduced in a less cramped form in the
- file MemoryAid1, %H4%italics%H4% are used to highlight key %H4%duplications%H4% as before,
- whilst %H2%bold type%H2% indicates keys you need to be %H2%careful%H2% about because they do
- not fit a pattern, because two conflicting patterns intersect, or just
- because they are potentially very destructive:
-
- %H2%KEY
- Non-reconfigurable:
- PgUp
- PgDn
- Up
- Down
- Left
- Right
- Mostly reconfigured:
- H
- F11
- Prnt
- Tab
- BkSp
- Ins
- Home
- Del
- Copy
-
- The file Key1 includes all the definitions in this article, plus (for the
- sake of completeness) those PD4 defaults which I have retained. To try them
- out, double-click on Key1 and print out the file MemoryAid1 for reference.
- To make these your default definitions, copy Key1 as Key, add a new line at
- the end of Key giving the command \Fq|m to close a window, and move it into
- your !PipeDream directory. It takes a few extra seconds to run when you
- load PipeDream.
-
- %H2%Possible further developments
-
- A long time ago I acquired for my BBC machine a Torch Z80 board, which came
- bundled with a family of programmes called Perfect Writer, Perfect Calc and
- Perfect Filer. They weren't perfect, but they were quite good if you could
- remember your way around a labyrinth of Ctrl and Escape sequences. I never
- did find out how to modify Filer commands, but some hard work on integrating
- and rationalising the command sets for Calc and Writer (with maximum use of
- the 64 definable key combinations) gave me years of easy "off the top of the
- head" operation; I hardly used the command tables on the wall behind the
- computer. Last year, when my Archimedes was away for nearly three weeks for
- upgrading and repairs, I switched back to the old machine, and found my
- command set easy to recall even after two years of using PipeDream 3 daily.
-
- So I'm keen to get to grips with as much as possible of the PD4 command set.
- The way I'm thinking at present (after only a few weeks with PD4) is:
-
- %R%*
-
- %R%*
- %R%*
- %R%*
- %R%*
- %R%*
-
- %R%*
-
-
- I shall undoubtedly finish up with more command families than function keys.
- Two or more sets of commands could be defined for the same group of keys in
- different contexts (eg. text or table editing), with a "hot" function key to
- swap between them. Alternatively, there are many unused two-letter Ctrl
- combinations which are easy to type (see PS below).
-
- I have written this article to see if there is any demand from others for
- such a tightly-structured set of key definitions. I shall define some more
- keys for my own use, anyway. If you have any comments on what I have done
- so far, favourable or otherwise, please write to me at this address:
-
-
-
-
-
-
- PS:
- %CO:B,18,72%
-
-
-
-
-
-
-
-
-
- %H2%ALONE
- Next column
- %H4%Delete prev char
- RISC OS command
- Printing DB
- Insert space
- %H4%Top of column
- %H4%Delete prev char
- %H4%Bottom of column
-
-
-
-
-
- %H2%ALONE
- %H4%Windowful up
- %H4%Windowful down
- %H4%Row up
- %H4%Row down
- Prev char/column
- Next char/column
-
- DB = dialogue box
-
- %H4%Italics%H4% indicate commands duplicated within the above key range
-
- %H2%Bold%H2% type indicates anything positively different from PipeDream 3:
- beware of the reversal of CtrlTab and CtrlShiftTab
-
- Behaviour of Left/Right arrow keys by themselves varies with type of
- slot (text/number, protected/unprotected) in a comprehensible way
-
- Space bar and Return each have only one default action, except for
- AltSpace which inserts a "hard" space (ASCII 160) and CtrlReturn (used
- only in formula editing)
-
- Under RISC OS 2, CtrlShiftF12 is DANGEROUS: it just dumps you out of
- the desktop, destroying all unsaved work! So unless you are prepared
- to avoid using CtrlShiftF11, ShiftF12, CtrlF12 and CtrlShiftPrint,
- Sod's Law says you'd better change CtrlShiftF12 for RISC OS 2.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- %H2%Caret position
- Inside a word
- Between words
- Start of slot
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- %H2%ALONE
-
- %H4%Windowful up
- %H4%Windowful down
- %H4%Row up
- %H4%Row down
- Prev char/%H4%column
- Next char/%H4%column
-
-
- Right margin DB
- Print options DB
- %H4%Next column
- %H4%Previous column
- %H2%Insert space
- %H2%Start of document
- Delete prev char
- Delete next char
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Identify "families" of 3 or 4 related commands, to be grouped either
- horizontally along function key groups or "vertically" on same key
- No opposite commands on adjacent F-keys (eg. PD4 defaults for F7 & F8)
- As much compatibility with !Edit and Impression commands as possible?
- Some consistency between families in meanings of Shift and Ctrl
- Use CtrlShift combinations for highly destructive commands
- Priority to replacement of 3- or 4-letter commands, and of any 2-letter
- ones which tempt touch-typists to use "wrong" fingers
- Include on function keys composite commands like Albert Kitchenside's
- (if he agrees) for moving split-line blocks of text.
-
-
-
-
-
-
-
-
-
-
-
-
- Keith Matthews
- 17 Main Avenue
- Peterston-super-Ely
- CARDIFF CF5 6LQ
-
- The next stage of this project (Cmdkeys2) is already substantially
- complete, with only a few minor problems still unsolved. It consists
- of a comprehensive revision of the keyboard Ctrl sequences, each
- restricted to two characters at most. If you want a draft copy before
- May 1993, please send me a blank E-format disc and a stamped addressed
- sticky label in a jiffy-bag marked "CmdKeys2". Stage 3, redefining at
- least some of the numbered function keys, will be started when I have
- thoroughly tested stage 2 in normal use.
- %CO:C,19,0%
-
-
-
-
-
-
-
-
-
- %H2%SHIFT
- Previous column
- %H4%Delete next char
- Iconbar front/back
- -----
- -----
- -----
- %H4%Delete next char
- -----
-
-
-
-
-
- %H2%SHIFT
- %H4%Row up
- %H4%Row down
- %H4%Windowful up
- %H4%Windowful down
- Back to word start
- Next word start
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- %H2%Initial space
- Del.word to caret
- Delete prev.word
- Delete next word
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- %H2%SHIFT
-
- %H4%Row up
- %H4%Row down
- %H4%Windowful up
- %H4%Windowful down
- Back to word start
- Next word start
-
-
-
- Printer config DB
- Windowful right
- Windowful left
- %H2%Page break DB
- %H2%Paste from buffer
- Delete word back
- Del to next word
- %CO:D,19,0%
-
-
-
-
-
-
-
-
-
- %H2%CTRL
- %H2%Last%H2% column
- %H4%Right margin DB
- New task window
- -----
- -----
- %H4%%H2%Top of column
- -----
- %H4%Bottom of column
-
-
-
-
-
- %H2%CTRL
- %H4%Scroll up
- %H4%Scroll down
- %H4%Top of column
- %H4%Bottom of column
- Start of this slot
- End of this slot
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- %H2%No initial space
- Delete whole word,
- Delete prev.word
- Delete next word
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- %H2%CTRL
-
- %H4%Scroll up
- %H4%Scroll down
- %H4%Top of column
- %H4%Bottom of column
- Start of this slot
- End of this slot
-
- %H4%First column
-
- Document font DB
- Last column
- %H4%First column
- Insert slot in col
- %H2%Centre window
- %H2%Del slot from col
- %H2%Delete to end slot
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -- or phone me on
- 0446 760362, if
- your comments are
- brief.
- %CO:E,16,0%
-
-
-
-
-
-
-
-
-
- %H2%CTRL+SHIFT
- %H2%First%H2% column
- %H4%Right margin DB
- Shutdown
- -----
- -----
- -----
- -----
- -----
-
-
-
-
-
- %H2%CTRL+SHIFT
- %H4%Top of column
- %H4%Bottom of column
- %H4%Scroll up
- %H4%Scroll down
- Scroll left
- Scroll right
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- incl.after caret
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- %H2%CTRL+SHIFT
-
- %H4%Top of column
- %H4%Bottom of column
- %H4%Scroll up
- %H4%Scroll down
- Scroll left
- Scroll right
-
- %H4%First column
-
- Local font DB
- Add col on right
- %H4%First column
- Insert empty row
- Insert empty col
- %H2%Delete whole row
- %H2%Delete whole col
- %CO:F,12,0%%CO:G,12,0%%CO:H,12,0%